package com.ruoyi.project.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.project.domain.entity.ProjectFee;
import com.ruoyi.project.domain.entity.ProjectFfinance;
import com.ruoyi.project.domain.entity.ProjectPay;
import com.ruoyi.project.domain.query.ProjectFeeQuery;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.List;
import java.util.Map;

public interface IProjectFeeService extends IService<ProjectFee> {

    Boolean syncData(List<ProjectFee> list);


    void deleteAll(LocalDate threeDaysAgo );

    //获取报销列表
     List<ProjectFee> getAllFee(ProjectFeeQuery query);


    //获取报销列表 日期范围内
    List<ProjectFee> getAllFeeByDate(ProjectFeeQuery query);

    //获取收款列表
    List<ProjectFee> getReceiveFee(ProjectFeeQuery query);

    //获取收款列表 包含其他收入  付款
    List<ProjectFee> getReceiveAndOtherFee(ProjectFeeQuery query);

    //获取项目调平管家婆应收金额
    List<ProjectFee> getBalanceFee(ProjectFeeQuery query);



    //获取其他收入
    List<ProjectFee> getOtherFee(ProjectFeeQuery query);

    //获取收款列表 包含付款
    List<ProjectFee> getReceiveAndPay(ProjectFeeQuery query);

    //按日期范围去往来客户的收付款
    List<ProjectPay> getReceiveAndPayForCustomer(ProjectFeeQuery query);

    //获取优惠的金额
    BigDecimal getDiscount(ProjectFeeQuery query);


}
